3MXBファイル
3MXB幾何形状フォーマットは、最初のセクションで説明したLODの原則に従います。このフォーマットはツリー構造であり、親ノードの高解像度表現が子になっています。
3MXBファイルはバイナリフォーマットで作成されます。ノードまたはノードのセットに必要なすべてのデータ(すべてのテクスチャと幾何形状を含む)を含むか、または参照しています。1つの3MXBファイルは、LODツリーの複数のノードを表現することができます。この場合、すべてのノードが兄弟、すなわち同じ低解像度ノードの子です。
3MXBフォーマットは次の構造を取ります。
3MXBファイルの先頭には、「3MXBO」というマジック番号が置かれます。その次はSHです。これはファイルのヘッダーのバイト数を表します。SHはバイナリフォーマットの数値(uint 32)です。
SHのすぐ後に、ファイルヘッダーが続きます。ヘッダーは、サイズがSHのJSONフォーマット文字列であり、次の内容からなります。
version: | 1 | |
nodes: | [node_data0, …., node_data m] | 兄弟データの配列。各兄弟に1つずつ。ノードの内容は、専用のセクションで指定されます。 |
resources: | [resource_data0, …., resource _data p] | リソースメタデータの配列。ノードに必要な各リソース(テクスチャまたは幾何形状)に対して1つずつ。リソースデータの詳細はこの後で説明します。 |
3MXBファイルの最後には、いくつかのバイナリバッファが置かれます。